package com.wander.designBehavioral.state;

import org.junit.jupiter.api.Test;

/**
 * @Author : WDYin
 * @Date : 2020/10/11
 * @Desc :
 */
public class Client {

    @Test
    public void test() throws InterruptedException {
        /**使用 Context 来查看当状态 State 改变时的行为变化。
         * 使用 Context 和状态对象来演示 Context 在状态改变时的行为变化。*/
        Context context = new Context();

        StateStart stateStart = new StateStart();
        stateStart.pay(context);

        System.out.println(context.getState().toString());

        Thread.sleep(3000);

        StateStop stateStop = new StateStop();
        stateStop.pay(context);

        System.out.println(context.getState().toString());
    }
}
